package com.reebake.ideal.protect.core;

import com.reebake.ideal.crypto.entity.SecretKeyEntity;

/**
 * 报文签名服务
 */
public interface SignatureService {
    /**
     * 签名
     * @param data 签名内容
     * @param secretKeyEntity 密钥
     * @return 签名
     */
    public String sign(String data, SecretKeyEntity secretKeyEntity);

    /**
     * 验证
     * @param data 签名数据
     * @param protectParameter 签名参数
     * @param secretKeyEntity 密钥
     * @return 验证结果
     */
    public boolean verify(String data, ProtectParameter protectParameter, SecretKeyEntity secretKeyEntity);

}
